57 research outputs found

    Sparse Transfer Learning for Interactive Video Search Reranking

    Get PDF
    Visual reranking is effective to improve the performance of the text-based video search. However, existing reranking algorithms can only achieve limited improvement because of the well-known semantic gap between low level visual features and high level semantic concepts. In this paper, we adopt interactive video search reranking to bridge the semantic gap by introducing user's labeling effort. We propose a novel dimension reduction tool, termed sparse transfer learning (STL), to effectively and efficiently encode user's labeling information. STL is particularly designed for interactive video search reranking. Technically, it a) considers the pair-wise discriminative information to maximally separate labeled query relevant samples from labeled query irrelevant ones, b) achieves a sparse representation for the subspace to encodes user's intention by applying the elastic net penalty, and c) propagates user's labeling information from labeled samples to unlabeled samples by using the data distribution knowledge. We conducted extensive experiments on the TRECVID 2005, 2006 and 2007 benchmark datasets and compared STL with popular dimension reduction algorithms. We report superior performance by using the proposed STL based interactive video search reranking.Comment: 17 page

    Améliorer la sécurité et la vie privée sur le Web à travers les empreintes de navigateur

    Get PDF
    I have been an associate professor in computer science at the University of Lille and a member of the Spirals project-team in the CRIStAL laboratory since September 2014. I obtained my PhD in Software Engineering in Grenoble in 2013, focusing on building robust self-adaptive component-based systems, and I completed a postdoctoral stay in the Inria DiverSE project-team, in Rennes, in the area of component-based software engineering. Since 2014, my research has mostly focused on (i) multi-cloud computing and (ii) security and privacy on the web. I have successfully co-advised two doctorates, Gustavo Sousa (defended July 2018) and Antoine Vastel (defended November 2019), and currently advise 3 students. I have decided to write my Habilitation pour Diriger des Recherches (HDR) in the area of privacy and security because this will be my main line of research activities for the near future. More specifically, I present the results of the research that my students, colleagues, collaborators, and I have done in the area of browser fingerprinting.Browser fingerprinting is the process of identifying devices by accessing a collection of relatively stable attributes through Web browsers. We call the generated identifiers browser fingerprints. Fingerprints are stateless identifiers and no information is stored on the client’s device. In the first half of this manuscript, we identify and study three properties of browser fingerprinting that make it both a risk to privacy, but also of use for security. The first property, uniqueness, is the power to uniquely identify a device. We performed a large scale study on fingerprint uniqueness and, although not a perfect identifier, we show its statistical qualities allow uniquely identifying a high percentage of both desktops and mobile devices [Laperdrix 2016]. The second property, linkability, is the capacity to re-identify, or link, fingerprints over time. This is arguably the main risk to privacy and enables fingerprint tracking. We show, through two algorithms, that some devices are highly trackable, while other devices’ fingerprints are too similar to be tracked over time [Vastel 2018b]. The third and final property is consistency, which refers to the capacity to verify the attributes in a fingerprint. Through redundancies, correlations or dependencies, many attributes are verifiable, making them more difficult to spoof convincingly. We show that most countermeasures to browser fingerprinting are identifiable through such inconsistencies [Vastel 2018a], a useful property for security applications.In the second half of this manuscript, we look at the same properties from a different angle. We create a solution that breaks fingerprint linkability by randomly generating usable browsing platforms that are unique and consistent [Laperdrix 2015]. We also propose an automated testing framework to provide feedback to the developers of browsers and browser extensions to assist them in reducing the uniqueness or their products [Vastel 2018c]. Finally, we look at how fingerprint consistency is exploited in-the-wild to protect websites against automated Web crawlers. We show that fingerprinting is effective and fast to block crawlers, but lacks resiliency when facing a determined adversary [Vastel 2020].Beyond the results I report in this manuscript, I draw perspectives for exploring browser fingerprinting for multi-factor authentication, with a planned large-scale deployment in the following months. I also believe there is potential in automated testing to improve privacy. And of course, we know that fingerprint tracking does not happen in a bubble, it is complementary to other techniques. I am therefore exploring other tracking techniques, such as our preliminary results around IP addresses [Mishra 2020] and caches [Mishra 2021], using ad blockers against their users, and a few other ideas to improve privacy and security on the Web.Les empreintes de navigateurs (en anglais browser fingerprinting) sont un mécanisme qui permet d’identifier les navigateurs Internet au travers de leurs caractéristiques et configurations uniques. Nous avons identifié trois propriétés des empreintes de navigateurs qui posent un risque pour la vie privée mais qui rendent possible des utilisations en sécurité. Ces propriétés sont l’unicité, qui permet de discriminer un navigateur parmi d’autres, la liaison d’empreintes, qui permet de suivre dans le temps un dispositif, et la cohérence, qui permet de vérifier une empreinte et rend difficile les contre-mesures. Dans la première moitié de ce manuscrit, nous explorons les qualités statistiques des empreintes de navigateurs, ainsi que la possibilité et l’efficacité de les tracer dans le temps, et nous concluons sur les propriétés statistiques imparfaites mais tout de même utiles de cet indicateur. Nous montrons également que les contre-mesures pour se protéger sont défaillantes et parfois même contre-productives.Dans la seconde partie de ce manuscrit, nous regardons les défenses et utilisations des empreintes de navigateur. Nous proposons un outil pour casser la liaison d’empreintes sans l’introduction d’incohérences, limitant ainsi le traçage. Nous avons également proposé un cadre de test automatisé pour réduire l’identifiabilité des navigateurs et de leurs extensions. Finalement, nous avons étudié comment l’analyse de cohérence des empreintes est utilisée sur le Web pour bloquer des robots, et nous concluons que cette technique est rapide mais manque encore de résilience, dont l’efficacité mériterait d’être améliorée contre des attaquants déterminés.Au-delà des résultats présentés dans ce manuscrit, je présente également des perspectives pour les recherches dans ce domaine particulièrement dynamique, avec notamment l’utilisation des empreintes de navigateur pour l’authentification multi-facteurs et l’utilisation des tests automatiques pour améliorer la vie privée des usagers. Nos résultats préliminaires sur l’utilisation d’adresses IP pour le traçage, les caches de navigateur, et les bloqueurs de publicité, méritent également d’être approfondis afin de continuer à renforcer la vie privée et la sécurité sur le Web

    Challenges for Automatic Multi-Cloud Configuration

    Get PDF
    National audienceMulti-cloud computing enables customers to exploit benefits of different cloud provi-ders to optimize reliability, performance and costs. Meanwhile, using multiple cloud providers reduces the risk of vendor lock-in as customers reduce their reliance on provider specific fea-tures. However, the large number of available cloud provider offerings and the differences among them makes it very complex to choose the best combination of cloud providers to deploy an application. Feature models from Software Product Line Engineering have been used to describe variability in cloud provider offerings and automatically generate valid cloud config-urations. In this paper we explore the challenges that must be faced to extend the use of feature models to automatically configure multi-cloud environments.La multitude des offres de nuages permet aux clients d'exploiter les avantages de chaque fournisseur pour optimiser la fiabilité, la performance et les coûts des logiciels dé-ployés. En même temps, l'usage de fournisseurs multiples de nuages réduit le risque d'être dé-pendant des caractéristiques spécifiques d'un fournisseur. Néanmoins, le grand nombre d'offres de fournisseurs de nuages, et leurs différences, rendent très difficile le choix d'une combinaison optimale de fournisseurs pour deployer une application. Les modèles de caractéristiques issus de l'ingénierie des lignes de produits logiciels ont déjà été utilisés pour décrire la variabilité parmi les offres des fournisseurs de nuage et pour générer automatiquement des configurations valides. Dans cet article, nous explorons les défis qui doivent être abordés pour étendre cette approche en vue de configurer automatiquement des environements de type multi-nuages

    An iterative technique to identify browser fingerprinting scripts

    Full text link
    Browser fingerprinting is a stateless identification technique based on browser properties. Together, they form an identifier that can be collected without users' notice and has been studied to be unique and stable. As this technique relies on browser properties that serve legitimate purposes, the detection of this technique is challenging. While several studies propose classification techniques, none of these are publicly available, making them difficult to reproduce. This paper proposes a new browser fingerprinting detection technique. Based on an incremental process, it relies on both automatic and manual decisions to be both reliable and fast. The automatic step matches API calls similarities between scripts while the manual step is required to classify a script with different calls. We publicly share our algorithm and implementation to improve the general knowledge on the subject

    Robusta (une approche pour la construction d'applications dynamiques)

    Get PDF
    Les domaines de recherche actuels, tels que l'informatique ubiquitaire et l'informatique en nuage (cloud computing), considèrent que ces environnements d exécution sont en changement continue. Les applications dynamiques, où les composants peuvent être ajoutés et supprimés pendant l'exécution, permettent à un logiciel de s'adapter et de s'ajuster à l'évolution des environnements, et de tenir compte de l évolution du logiciel. Malheureusement, les applications dynamiques soulèvent des questions de conception et de développement qui n'ont pas encore été pleinement explorées.Dans cette thèse, nous montrons que le dynamisme est une préoccupation transversale qui rompt avec un grand nombre d hypothèses que les développeurs d applications classiques sont autorisés à prendre. Le dynamisme affecte profondément la conception et développement de logiciels. S'il n'est pas manipulé correctement, le dynamisme peut silencieusement corrompre l'application. De plus, l'écriture d'applications dynamiques est complexe et sujette à erreur. Et compte tenu du niveau de complexité et de l impact du dynamisme sur le processus du développement, le logiciel ne peut pas devenir dynamique sans (de large) modification et le dynamisme ne peut pas être totalement transparent (bien que beaucoup de celui-ci peut souvent être externalisées ou automatisées).Ce travail a pour but d offrir à l architecte logiciel le contrôle sur le niveau, la nature et la granularité du dynamisme qui est nécessaire dans les applications dynamiques. Cela permet aux architectes et aux développeurs de choisir les zones de l'application où les efforts de programmation des composants dynamiques seront investis, en évitant le coût et la complexité de rendre tous les composants dynamiques. L'idée est de permettre aux architectes de déterminer l'équilibre entre les efforts à fournir et le niveau de dynamisme requis pour les besoins de l'application.Current areas of research, such as ubiquitous and cloud computing, consider execution environments to be in a constant state of change. Dynamic applications where components can be added, removed and substituted during execution allow software to adapt and adjust to changing environments, and to accommodate evolving features. Unfortunately, dynamic applications raise design and development issues that have yet to be fully addressed. In this dissertation we show that dynamism is a crosscutting concern that breaks many of the assumptions that developers are otherwise allowed to make in classic applications. Dynamism deeply impacts software design and development. If not handled correctly, dynamism can silently corrupt the application. Furthermore, writing dynamic applications is complex and error-prone, and given the level of complexity and the impact dynamism has on the development process, software cannot become dynamic without (extensive) modification and dynamism cannot be entirely transparent (although much of it may often be externalized or automated). This work focuses on giving the software architect control over the level, the nature and the granularity of dynamism that is required in dynamic applications. This allows architects and developers to choose where the efforts of programming dynamic components are best spent, avoiding the cost and complexity of making all components dynamic. The idea is to allow architects to determine the balance between the efforts spent and the level of dynamism required for the application's needs. At design-time we perform an impact analysis using the architect's requirements for dynamism. This serves to identify components that can be corrupted by dynamism and to at the architect's disposition render selected components resilient to dynamism. The application becomes a well-defined mix of dynamic areas, where components are expected to change at runtime, and static areas that are protected from dynamism and where programming is simpler and less restrictive. At runtime, our framework ensures the application remains consistent even after unexpected dynamic events by computing and removing potentially corrupt components. The framework attempts to recover quickly from dynamism and to minimize the impact of dynamism on the application. Our work builds on recent Software Engineering and Middleware technologies namely, OSGi, iPOJO and APAM that provide basic mechanisms to handle dynamism, such as dependency injection, late-binding, service availability notifications, deployment, lifecycle and dependency management. Our approach, implemented in the Robusta prototype, extends and complements these technologies by providing design and development-time support, and enforcing application execution consistency in the face of dynamism.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF

    Extending Dynamic Software Product Lines with Temporal Constraints

    Get PDF
    International audienceDue to the number of cloud providers, as well as the extensive collection of services, cloud computing provides very flexible environments, where resources and services can be provisioned and released on demand. However, reconfiguration and adaptation mechanisms in cloud environments are very heterogeneous and often exhibit complex constraints. For example, when reconfiguring a cloud system, a set of available services may be dependent on previous choices, or there may be alternative ways of adapting the system, with different impacts on performance, costs or reconfiguration time. Cloud computing systems exhibit high levels of variability, making dynamic software product lines (DSPLs) a promising approach for managing them. However, in DSPL approaches, verification is often limited to verifying conformance to a variability model, but this is insufficient to verify complex reconfiguration constraints that exist in cloud computing systems. In this paper, we propose the use of temporal constraints and reconfiguration operations to model a DSPL's reconfiguration lifecycle. We demonstrate how these concepts can be used to model the variability of cloud systems, and we use our approach to identify reconfigurations that meet given criteria

    FP-TESTER: Automated Testing of Browser Fingerprint Resilience

    Get PDF
    International audienceDespite recent regulations and growing user awareness , undesired browser tracking is increasing. In addition to cookies, browser fingerprinting is a stateless technique that exploits a device's configuration for tracking purposes. In particular , browser fingerprinting builds on attributes made available from Javascript and HTTP headers to create a unique and stable fingerprint. For example, browser plugins have been heavily exploited by state-of-the-art browser fingerprinters as a rich source of entropy. However, as browser vendors abandon plugins in favor of extensions, fingerprinters will adapt. We present FP-TESTER, an approach to automatically test the effectiveness of browser fingerprinting countermeasure extensions. We implement a testing toolkit to be used by developers to reduce browser fingerprintability. While countermeasures aim to hinder tracking by changing or blocking attributes, they may easily introduce subtle side-effects that make browsers more identifiable , rendering the extensions counterproductive. FP-TESTER reports on the side-effects introduced by the countermeasure, as well as how they impact tracking duration from a fingerprinter's point-of-view. To the best of our knowledge, FP-TESTER is the first tool to assist developers in fighting browser fingerprinting and reducing the exposure of end-users to such privacy leaks

    Modèles de caractéristiques augmentés de cardinalités relatives

    Get PDF
    Feature modeling is widely used to capture and manage commonalities and variabilities in software product lines.Cardinality-based feature models are used when variability applies not only to the selection or exclusion of features but also to the number of times a feature can be included in a product.Feature cardinalities are usually considered to apply in local or global scope. However, through our work in managing variability in cloud computing providers, we have identified cases where these interpretations are insufficient to capture the variability of the cloud environment.In this paper, we redefine cardinality-based feature models to allow multiple relative cardinalities between features and discuss the effects of relative cardinalities on cross-tree constraints.To evaluate our approach we conducted an analysis of relative cardinalities in four cloud computing providers.In addition, we developed tools for reasoning on feature models with relative cardinalities and performed experiments to verify the performance and scalability of the approach.The results from our study indicate that extending feature models with relative cardinalities is feasible and improves variability modeling, especially in the case of cloud environments

    FP-Scanner: The Privacy Implications of Browser Fingerprint Inconsistencies

    Get PDF
    International audienceBy exploiting the diversity of device and browser configurations, browser fingerprinting established itself as a viable technique to enable stateless user tracking in production. Companies and academic communities have responded with a wide range of countermeasures. However , the way these countermeasures are evaluated does not properly assess their impact on user privacy, in particular regarding the quantity of information they may indirectly leak by revealing their presence. In this paper, we investigate the current state of the art of browser fingerprinting countermeasures to study the inconsistencies they may introduce in altered fingerprints , and how this may impact user privacy. To do so, we introduce FP-SCANNER as a new test suite that explores browser fingerprint inconsistencies to detect potential alterations, and we show that we are capable of detecting countermeasures from the inconsistencies they introduce. Beyond spotting altered browser fingerprints, we demonstrate that FP-SCANNER can also reveal the original value of altered fingerprint attributes, such as the browser or the operating system. We believe that this result can be exploited by fingerprinters to more accurately target browsers with countermeasures

    FP-Redemption: Studying Browser Fingerprinting Adoption for the Sake of Web Security

    Get PDF
    International audienceBrowser fingerprinting has established itself as a stateless technique to identify users on the Web. In particular, it is a highly criticized technique to track users. However, we believe that this identification technique can serve more virtuous purposes, such as bot detection or multi-factor authentication. In this paper, we explore the adoption of browser fingerprinting for security-oriented purposes. More specifically, we study 4 types of web pages that require security mechanisms to process user data: sign-up, sign-in, basket and payment pages. We visited 1, 485 pages on 446 domains and we identified the acquisition of browser fingerprints from 405 pages. By using an existing classification technique, we identified 169 distinct browser fingerprinting scripts included in these pages. By investigating the origins of the browser fingerprinting scripts, we identified 12 security-oriented organizations who collect browser fingerprints on sign-up, sign-in, and payment pages. Finally, we assess the effectiveness of browser fingerprinting against two potential attacks, namely stolen credentials and cookie hijacking. We observe browser fingerprinting being successfully used to enhance web security
    • …
    corecore